<?php
/****************************************************************
*** Methodes pour la manipulation de fichiers et dossiers
*****************************************************************/
/**
* @return	mixed
* @access	public
* @author	Joël Gaujard <j.gaujard@gmail.com>
*/


	// verifie qu'un fichier est bel et bien present
	function checkFile($filename) {
		if (is_file($filename)) {
			return (true);
		}
		return (false);
	}

	function getExtension($filename, $format=true){
		$ret = pathinfo($filename);
		$extension = $ret["extension"];
		if ($format) {
			$extension = strtolower($extension);
		}
		return $extension;
	}

	// supprime un fichier
	function deleteFile($filename) {
		if (is_file($filename)) {
			chmod ($filename, 0777);
			if (unlink($filename)) {
				return (true);
			}
		}
		return (false);
	}

	// deplace un fichier
	function moveFile($filename, $dest) {
		if (is_file($filename)) {
			if (rename ($filename, $dest)) {
				return ($dest);
			}
		}
		return (false);
	}

	// verifie qu'un repertoire est bel et bien present
	function checkDir($path) {
		if (is_dir($path)) {
			return (true);
		}
		return (false);
	}

	// creation d'un repertoire lors d'ajout d'un nouveau membre ou d'un nouveau projet
	function createDir($path, $chmod=0777) {
		if ( mkdir ($path, $chmod) ) {
			return (true);
		}
		return (false);
	}

	// suppression d'un repertoire recursivement
	function deleteDir($dir) {
		if (empty($dir)) {
			return false;
		}

		$handle = opendir($dir);
		while (false !== ($FolderOrFile = readdir($handle))) {
			if($FolderOrFile != '.' && $FolderOrFile != '..' && $FolderOrFile != '.svn') {
				if(is_dir($dir . $FolderOrFile)) { 
					document::deleteDir($dir . $FolderOrFile);
				} else {
					document::deleteFile($dir . $FolderOrFile);
				}
			}
		}
		closedir($handle);

		chmod ($dir, 0777);
		if(rmdir($dir)) {
			return true;
		}
	}

